Fix segmentations failure in error.c gumbo_caret_diagnostic_to_string #1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Without this patch method find_last_newline returns value bigger than
find_next_newline and in line
original_line.length = line_end - line_start;overflow happens.
Before changes newly added test failed with segmentation failure:
This slightly changed copy of code used in nokogumbo gem.
Link
https://jira.railsc.ru/browse/SERVICES-1513
Суть такая: ошибка парсинга возникает на символе окончания строки, функция
find_last_newlineдолжна вернуть начало строки, до места ошибки, но поскольку ошибка возникает на символе переноса, то возвращается позиция за местом ошибки, что противоречит назначению функции.реквест в основной репозиторий google#371
там есть проблема, что там у основного майнтейнера отобрали права, а больше никто этой либой из гугла похоже не занимается google#370 (comment)